Uchat 1.0/MAJOR/UCHAT.CTL

16.6 KB 796ab334092d80fb…
;
; Major BBS Chat Emulation Control File
;
; This file is designed to provide emulation of Major BBS chat functionality.
; It does not necessarily provide all the features of Major's chat, but it
; does provide all the common functionality in as close a presentation as
; possible.
;
; Please note that this is patterned after Major's "Entertainment Edition"
; chat, not the chat included with the standard package.
;
; This control file requires a /E:2 entry style in the Opt Data
; of UltraChat when you invoke this control file.
;
; ----- HEADER ------------------------------------------------------
;
; ** CHANGE FOR YOUR OWN NEEDS **
;
SYSTEM_NAME_TEXT "Test Ultra-Chat System"
SYSTEM_ID_TEXT "UltraTst"
SYSOP_NAME_TEXT "The SysOp"
UCHAT_DIR SLASHT
;
; This includes a moan macro file
;
INCLUDE MOANS.INC
;
; ----- STYLE AND GENERAL -------------------------------------------
;
LIST_ME_SWITCH FALSE
KILL_LINE_KEY ^^
ENTER_STRING "^^"
MIN_CHANNEL_NUM 0
IS_TEXT "is"
ARE_TEXT "are"
IGNORED_TEXT "*"
INVITED_TEXT "*"
;
; ----- MAJOR BBS STYLE COMMANDS IN ALPHA ORDER ---------------------
;
; Get list of moan macros
;
HELP#02_CMD     "ACTION LIST" MODE=ACDEFG        ;ACTION LIST
HELP#02_CMD     "/A LIST"     MODE=ABCDEFG EXACT ;/A LIST
   HELP#02_FILE  MOANS.LST
   HELP#02_ERROR "^[[1;35mAction list file not found!^M"
;
; Display moan help
;
HELP#03_CMD     "ACTION ?"    MODE=ACDEFG  EXACT ;ACTION ?
HELP#03_CMD     "/A ?"        MODE=ABCDEFG EXACT ;/A ?
   HELP#03_FILE  MOANS.HLP
   HELP#03_ERROR "^[[1;35mAction help file not found!^M"
;
; Enable moan macro use
;
ON#05_CMD       "ACTION ON"   MODE=ACDEFG  EXACT ;ACTION ON
ON#05_CMD       "/A ON"       MODE=ABCDEFG EXACT ;/A ON
   ON#05_TEXT "^[[1;32m...Ok, you're in action mode now!! (type '^[[36maction ?^[[32m' for help).^M"
;
; Disable moan macro use
;
OFF#05_CMD      "ACTION OFF"  MODE=ACDEFG  EXACT ;/A OFF
OFF#05_CMD      "/A OFF"      MODE=ABCDEFG EXACT ;/A OFF
   OFF#05_TEXT "^[[1;32m...Back to regular teleconference mode...^M"
;
; Go to another user's private channel
;
CHANNEL#02_CMD  JOIN          MODE=CDFG    EXACT ;JOIN
CHANNEL#02_CMD  /J            MODE=BCDFG   EXACT ;/J
   CHANNEL#02_CHANPMT "^[[1;32mWho's private channel would you like to join? "
   CHANNEL#02_NOTINV  "^[[1;35mSorry, but you're not invited to %RUSER:C%'s private channel!^M"
   CHANNEL#02_ENTRY   "%RUSER:C% has just arrived from another channel.^M"
   CHANNEL#02_EXIT    "%RUSER:C% has just gone to another channel.^M"
;
; Go to another user's private channel
;
CHANNEL#03_CMD  JOIN          MODE=CDFG          ;JOIN <who>
CHANNEL#03_CMD  /J            MODE=BCDFG   BLANK ;/J <who>
   CHANNEL#03_CHANPMT =CHANNEL#02_CHANPMT
   CHANNEL#03_NOTINV  =CHANNEL#02_NOTINV
   CHANNEL#03_ENTRY   =CHANNEL#02_ENTRY
   CHANNEL#03_EXIT    =CHANNEL#02_EXIT
;
; Ignore another user
;
INTERACT#01_CMD FORGET        MODE=BCDEFG        ;FORGET
INTERACT#01_CMD /F            MODE=BCDEFG  EXACT ;/F
INTERACT#01_CMD /F            MODE=BCDEFG  BLANK ;/F
   INTERACT#01_ON     "^[[1;32mOkay, you will not receive any of %RUSER:C%'s whispers,
      +     | pages, chat requests, or invitations.  You will also not see
      +     | any of their public messages or actions and %RUSER:C% has been
      +     | uninvited from your private channel.  Enjoy the peace and quiet!^M"
   INTERACT#01_OFF    '^[[1;32mOkay, you have no longer "forgotten" about %RUSER:C% (i.e.
      +     | you will see all of their messages again).^M'
   INTERACT#01_ALLON  "^[[1;32mOkay, you have now forgotten ALL users.^M"
   INTERACT#01_ALLOFF "^[[1;32mOkay, you have remembered all users.^M"
;
; Unignore another user
;
INTERACT#02_CMD REMEMBER      MODE=BCDEFG        ;REMEMBER
INTERACT#02_CMD /R            MODE=BCDEFG  EXACT ;/R
INTERACT#02_CMD /R            MODE=BCDEFG  BLANK ;/R
   INTERACT#02_ON     =INTERACT#01_ON
   INTERACT#02_OFF    =INTERACT#01_OFF
   INTERACT#02_ALLON  =INTERACT#01_ALLON
   INTERACT#02_ALLOFF =INTERACT#01_ALLOFF
;
; Invite a user to your private channel
;
INTERACT#04_CMD "INVITE ALL"  MODE=BCDEFG  EXACT ;INVITE ALL
INTERACT#04_CMD INVITE        MODE=BCDEFG        ;INVITE <who>
INTERACT#04_CMD "/I ALL"      MODE=BCDEFG  EXACT ;/I ALL
INTERACT#04_CMD /I            MODE=BCDEFG  BLANK ;/I <who>
   INTERACT#04_ALLON '^[[1;32mOkay, now anyone and everyone can join your private channel.^M
      +      Enter "^[[36muninvite all^[[32m" to deactivate this mode.^M'
   INTERACT#04_ON "^[[1;32mOkay, %RUSER:C% is invited to your private channel.^M"
   INTERACT#04_ON2 "^[[1;32mOkay, %RUSER:C% is invited to your private channel.^M
      +       NOTE: You are not currently in your private channel.^M
      +       Your invitation only applies to YOUR private channel.^M"
   INTERACT#04_REMOTEINUC '%RUSER:C% has invited you to their private channel.^M
      +      Enter "^[[36mjoin %RUSER:C%^[[33m" to go there while in teleconferencing.^M'
   INTERACT#04_REMOTE "%RUSER:C% has invited you to their private channel.^M"
;
; Uninvite (kick out) a user from your private channel
;
INTERACT#05_CMD "UNINVITE ALL" MODE=BCDEFG EXACT ;UNINVITE ALL
INTERACT#05_CMD UNINVITE      MODE=BCDEFG        ;UNINVITE <who>
INTERACT#05_CMD "/U ALL"      MODE=BCDEFG  BLANK ;/U ALL
INTERACT#05_CMD /U            MODE=BCDEFG  BLANK ;/U <who>
   INTERACT#05_ALLOFF "^[[1;32mOkay, your private channel is no longer open for anyone to enter.^M
      +      To remove anyone currently in your private channel, specifically
      +     | uninvite them (i.e. ^[[36mUNINVITE <who>^[[32m).^M"
   INTERACT#05_OFF2 "^[[1;32mOkay, %RUSER:C% has been uninvited from your private channel.^M"
   INTERACT#05_OFF  "^[[1;32mOkay, %RUSER:C% has been uninvited and kicked out
      +     | from your private channel.^M"
   INTERACT#05_REMOVE "You have just been uninvited from %RUSER:C%'s private channel!^M
      +      Returning to the main channel.^M"
;
; Send a private message to a user
;
PRIVATE#01_CMD  "WHISPER TO"  MODE=ACDFG         ;WHISPER TO
   PRIVATE#01_REMOTE  "From %RUSER:C% (whispered): %RMSG%^M"
   PRIVATE#01_CONFIRM "^[[1;33m-- Message sent only to %RUSER:C% --^M"
   PRIVATE#01_NAMEPMT "^[[1;32mWhich User-ID?  ^[[1;36m"
   PRIVATE#01_MSGPMT  "^[[1;32mInput up to 2 lines of text to send to %RUSER:C%:^M^M^[[1;36m"
   PRIVATE#01_NOCHAT  "^[[1;35m^MSorry, but that user asked not to be disturbed!^M"
   PRIVATE#01_ERROR   "^[[1;35m^MThat user cannot be interrupted right now.^M"
;
; Page another user
;
PRIVATE#02_CMD  /P            MODE=ABCDEFG EXACT ;/P <who> ...
PRIVATE#02_CMD  /P            MODE=ABCDEFG BLANK ;/P <who> ...
PRIVATE#02_CMD  PAGE          MODE=ACDFG         ;PAGE <who> ...
   PRIVATE#02_REMOTE  "^G%RUSER:C% is paging you from Teleconference: %RMSG%^M"
   PRIVATE#02_EMPTY   "^G%RUSER:C% is paging you from Teleconference!^M"
   PRIVATE#02_CONFIRM "^[[1;32m... Paging %RUSER:C% ...^M"
   PRIVATE#02_NAMEPMT =PRIVATE#01_NAMEPMT
   PRIVATE#02_MSGPMT  =PRIVATE#01_MSGPMT
   PRIVATE#02_NOCHAT  =PRIVATE#01_NOCHAT
   PRIVATE#02_ERROR   =PRIVATE#01_ERROR
;
; Exit from chat
;
EXIT#02_CMD     /X            MODE=BE      EXACT ;/X
EXIT#02_CMD     X             MODE=BE      EXACT ;X
;
; Exit from chat
;
EXIT#01_CMD     /X            MODE=CDFG    EXACT ;/X
EXIT#01_CMD     X             MODE=CDFG    EXACT ;X
EXIT#01_CMD     EXIT          MODE=CDFG    EXACT ;EXIT
;
; Help file display
;
HELP#01_CMD     /?            MODE=ABCDEFG EXACT ;/?
HELP#01_CMD     ?             MODE=ACDFG   EXACT ;?
   HELP#01_FILE  MBBSHELP.TXT
   HELP#01_ERROR "^[[1;35mHelp file not found!^M"
;
; Alternate form of paging a user
;
CHAT#06_CMD     /C            MODE=ABCDEFG EXACT ;/C
CHAT#06_CMD     /C            MODE=ABCDEFG BLANK ;/C
CHAT#06_CMD     CHAT          MODE=ACDFG         ;CHAT
   CHAT#06_PROMPT "^[[1;32mWhich User-ID?  ^[[1;36m"
   CHAT#06_EXIT "%RUSER:C% has just left the teleconference.^M"
   CHAT#06_REMOTE '^G%RUSER:C% is requesting you join them in chat!^M
      +        Type "^[[36mC^[[33m" from the menu or "^[[36mchat %RUSER:C%^[[33m"
      +      | if already in chat to accept.^M'
   CHAT#06_CONFIRM "^[[1;33mOk, %RUSER:C% has been notified of your request to chat.^M"
   CHAT#06_NOCHAT "^[[1;35m^MSorry, but that user asked not to be disturbed!^M"
   CHAT#06_SELF "^[[1;35mSorry, but you can't do that to yourself!^M"
;
; Who display (people in chat)
;
WHO#01_CMD      /#            MODE=BCDEFG  EXACT ;/#
WHO#01_CMD      #             MODE=ACDFG   EXACT ;#
WHO#01_CMD      USERS         MODE=ACDFG   EXACT ;USERS
   WHO#01_HEADER "^[[1;32m^MLINE USER-ID                     ...... OPTION SELECTED^M"
   WHO#01_INVISIBLE "^[[1;33m %RLINE%  THIS USER IS CURRENTLY INVISIBLE^M"
   WHO#01_NORMAL "^[[1;33m %RLINE:2%  %RUSER:30C% ... %RCOMMAND%^M"
;
; Who display (all users)
;
WHO#08_CMD      SCAN          MODE=ACDFG   EXACT ;SCAN
WHO#08_CMD      /S            MODE=ABCDEFG EXACT ;/S
   WHO#08_HEADER "^[[1;32mUser-ID                       ... F I ... Channel (Topic)^M
      +              ---------------------------------------------------------^M"

   WHO#08_NORMAL "^[[1;32m%RUSER:30C%... %IGNORED:1% %INVITED:1% ... %RCHANNEL%^M"
;
; Three-line bio commands
;
BIO#02_CMD      /E            MODE=ABCDEFG EXACT ;/E
BIO#02_CMD      EDIT          MODE=ACDFG   EXACT ;EDIT
   BIO#01_PROMPT "Before you proceed, you MUST fill out the three line bio.  The
      +    | more interesting you make your bio, the more mail you will
      +    | receive!  You have 240 characters (approximately 3 lines) of
      +    | text to use.  Do not press <Enter> until you are done!  Word
      +    | wrapping happens automatically.  Start typing: ^M^M"

   BIO#02_PROMPT "You are about to change your three line bio.  The more 
      +    | interesting you make your bio, the more mail you will
      +    | receive!  You have 240 characters (approximately 3 lines)
      +    | of text to use.  Do not press <Enter> until you are done!
      +    |  Word wrapping happens automatically.  Start typing: ^M^M"

   BIO#02_YN "Are you sure you want to change your three line bio (Y/N)? "
;
; Toggle shortcut only mode
;
TOGGLE#04_CMD   /SHORTCUT     MODE=ACDEFG  EXACT ;/SHORTCUT
TOGGLE#04_CMD   SHORTCUT      MODE=ACDEFG  EXACT ;SHORTCUT
   TOGGLE#04_ON  "^[[1;32mYou are now in shortcut only mode.^M"
   TOGGLE#04_OFF "^[[1;32mYou are now in full command mode.^M"
;
; Generic action command
;
ACTION#01_CMD   GA            MODE=CDFG    BLANK ;GA
   ACTION#01_CONFIRM "^[[1;32m-- Generic action sent --^M"
   ACTION#01_REMOTE  "%RUSER:C% %RMSG%^M"
;
; Set topic for private channel
;
EDIT#02_CMD     TOPIC         MODE=ACDEFG        ;TOPIC
EDIT#02_CMD     /T            MODE=ABCDEFG EXACT ;/T
EDIT#02_CMD     /T            MODE=ABCDEFG BLANK ;/T
   EDIT#02_PROMPT  "^[[1;32mWhat is your topic? ^[[36m"
   EDIT#02_CONFIRM '^[[1;32mOkay, the topic for your private channel is "%TOPIC%".^M'
;
; Go back to main channel
;
EXIT#02_CMD     MAIN          MODE=CDEFG   EXACT ;/M
EXIT#02_CMD     /M            MODE=BCDEFG  EXACT ;/M
;
; Private message send alternate form
;
;NOTE: This one MUST be last so it doesn't match /cmd strings!!!
PRIVATE#01_CMD  /             MODE=ABCDEFG       ;/<name>
;
; Special command for when Enter is pressed
;
WHO#07_CMD      ^^            MODE=CDFG    EXACT ;command for just enter
   WHO#07_PRIVATE "^[[1;32mYou are in private chat with %RUSER:C% on line %RLINE%^M"
   WHO#07_HISCHAN "^[[1;32mYou're in %RUSER:C%'s private channel.^M"
   WHO#07_MYCHAN "^[[1;32mYou're in your private channel.^M"
   WHO#07_PUBLIC "^[[1;32mYou're in the main channel.^M"
   WHO#07_NORMAL "^[[1;37m%RUSER:C%^[[32m, "
   WHO#07_NOUSERS '^[[1;32mThere is currently no one else here with you.^M
         +              Just enter "?" if you need any assistance...^M'
   WHO#07_TOTAL '%IS/ARE% here with you.^MJust enter "?" if you need any assistance...^M'
;
; Users waiting display
;
CHAT#02_TEXT " %RLINE:2%  %RUSER:C%^M"
;
; User you're waiting on logged off
;
CHAT#24_TEXT "^[[1;32m^MThe user you are waiting for is no longer logged on, exiting wait mode.^M"
;
; Error messages
;
ERROR#01_TEXT "^[[1;35mUnrecognized command.  Type ? for Help.^M"
ERROR#02_TEXT "^[[1;35mThat user is not currently logged on.^M"
ERROR#03_TEXT "^[[1;35mThat user name refers to multiple users.  Please be more
      +     | specific with the name.^M"
ERROR#04_TEXT "^[[1;35m^MW commands are not allowed while you are invisible.^M"
ERROR#05_TEXT "^[[1;35m^MSorry, but that user asked not to be disturbed!^M"
ERROR#06_TEXT "^[[1;35mSorry, but you can't do that to yourself!^M"
ERROR#07_TEXT "^[[1;35mThat user name can refer to multiple users, if you wish to send
      +    | to a specific user, end the user name with a : for example 'SYSOP:' or
      +    | '%USER:C%:'^M"
;
; Users waiting to chat header
;
CHAT#03_TEXT "^[[1;32mThe following user(s) are waiting to chat with you:^M^M"
;
; Chat with user waiting prompt
;
CHAT#04_TEXT "^[[1;32mWould you like to go into private chat with this user (Y/n)? ^[[1;36m"
;
;
;
CHAT#05_TEXT "^[[1;32mEnter the line number of the person that you want to
      +            | chat with, or C to enter chat with someone else: ^[[1;36m"

CHAT#06_TEXT "^[[1;32mEnter the line number of the person that you want to
      +            | chat with, P for public chat with everyone, or X to exit: ^[[1;36m"

CHAT#07_TEXT "^[[1;32m^MDo you wish to wait for the other user (Y/n)? ^[[1;36m"

CHAT#08_TEXT "^[[1;32m^MYou are now waiting for the other user.  A period
      +              | will appear every 5 seconds while you wait.  Press
      +              | the <Enter> key at any time to stop waiting for the
      +              | other user.^M^M"

CHAT#09_TEXT "^[[1;33m^M^M...Okay, exiting chat...^M"

CHAT#10_TEXT '^[[1;33m^M^[[1;33m*** Chat Mode Activated ***^[[32m^M
      +      Type "^[[36mX^[[32m" on a blank line to exit.^M^M'

CHAT#12_TEXT "^[[1;36m"

CHAT#13_TEXT "^[[1;36m:"
CHAT#20_TEXT =CHAT#13_TEXT
CHAT#21_TEXT =CHAT#13_TEXT
CHAT#22_TEXT =CHAT#13_TEXT

CHAT#16_TEXT "^[[1;32m-- Message sent --^M"

CHAT#17_TEXT "^[[1;32m-- No one is here with you, message not sent --^M"

MISC#02_TEXT "^[[1;32mPress any key to continue..."

MISC#05_TEXT "^[[1;37m^L"

MISC#07_TEXT "^[[1;32mThe owner of this private channel has logged off.^M
      +       You are being placed in public chat.^M^M"

MISC#08_TEXT "^^^M^[[1;35m*** Message Aborted ***^M"

COLOR#01_TEXT "^[[1;36m"

COLOR#02_TEXT "^[[1;33m"

;
; The following strings are set up for what we believe is a "nicer"
; looking implementation than the default Major BBS emulation.  Given
; below this section is another section which can be used instead
; which gives TRUE Major BBS emulation.
;
CHAT#01_TEXT "From %RUSER:C%: %RMSG%^M"
CHAT#23_TEXT "^[[0;1;33m***^M"
CHAT#14_TEXT "%RUSER:C% just joined this channel!^M"
CHAT#19_TEXT "%RUSER:C% just vanished!^M"
MISC#09_TEXT "^[[0;1;37mWelcome to %VERSION% in Major BBS emulation mode!^M^M
      +      ^[[1;33mTeleconference Link-Up^M----------------------^M"
MISC#03_TEXT "%RUSER:C% just logged in.^M"
CHAT#15_TEXT "%RUSER:C% has just left the teleconference.^M"

;
; For TRUE Major BBS Entertainment Edition emulation, the following
; strings should be used to replace their counterparts above.
;
;PRIVATE#01_REMOTE "^[[1;33m***^MFrom %RUSER:C% (whispered): %RMSG%^M"
;CHAT#01_TEXT "^[[1;33m***^MFrom %RUSER:C%: %RMSG%^M"
;PRIVATE#02_REMOTE "^G^[[1;33m***^M%RUSER:C% is paging you from Teleconference: %RMSG%^M"
;ACTION#01_REMOTE "^[[1;33m***^M%RUSER:C% %RMSG%^M"
;PRIVATE#02_EMPTY "^G^[[1;33m***^M%RUSER:C% is paging you from Teleconference!^M"
;INTERACT#04_REMOTEINUC '^[[1;33m***^M%RUSER:C% has invited you to their private channel.^M
;      +      Enter "^[[36mjoin %RUSER:C%^[[33m" to go there while in teleconferencing.^M'
;INTERACT#04_REMOTE "^[[1;33m***^M%RUSER:C% has invited you to their private channel.^M"
;INTERACT#05_REMOVE "^[[1;33m***You have just been uninvited from %RUSER:C%'s private channel!^M
;      +      Returning to the main channel.^M"
;CHAT#14_TEXT "^[[1;33m***^M%RUSER:C% just joined this channel!^M"
;CHANNEL#02_ENTRY "^[[1;33m***^M%RUSER:C% has just arrived from another channel.^M"
;CHAT#01_EXIT "^[[1;33m***^M%RUSER:C% has just left the teleconference.^M"
;CHANNEL#02_EXIT "^[[1;33m***^M%RUSER:C% has just gone to another channel.^M"
;CHAT#19_TEXT "^[[1;33m***^M%RUSER:C% just vanished!^M"
;MISC#09_TEXT "^[[1;33mTeleconference Link-Up^M----------------------^M"
;CHAT#15_TEXT "^[[1;33m%RUSER:C% has just left the teleconference.^M"
;
; In real Major BBS, the following string does not exist.  Leave
; it commented out if you want to have emulation be more exact.
;
;MISC#03_TEXT "^[[1;33m***^M%RUSER:C% just logged in.^M"